#ifndef _GUI_BUTTON_LINUX_
#define _GUI_BUTTON_LINUX_

#include <gtkmm.h>
#include "../GUI.h"
#include "Core/GUI/Button/IButton.h"


class Button : public IButton
{
public:
	Button(const std::string & _strName);
	virtual ~Button();
	Gtk::Widget & GetWidget();
	GUI_LINUX virtual void SetText(const std::string & _strText);
	GUI_LINUX virtual void OnPress(VoidFunctionVoid _function);
	GUI_LINUX virtual void OnRelease(VoidFunctionVoid _function);
	virtual void Accept(IVerticalLayout * _pVerticalLayout);
	virtual void Accept(IHorizontalLayout * _pHorizontalLayout);
private:
	Gtk::Button m_button;
}; 

#endif // _GUI_BUTTON_LINUX_